문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 Swift(프로그래밍 언어) (문단 편집) == 개발 철학 == >Swift는 다음과 같이 코드의 표현력을 높이기 위한 다른 많은 기능을 제공합니다. > * 함수 포인터와 통합된 [[클로저#프로그래밍 용어]] > * 튜플 및 멀티플 반환 값 > * 제네릭 > * 범위 또는 컬렉션에서의 빠르고 간결한 반복 > * 메소드, 확장 프로그램 및 프로토콜을 지원하는 구조 > * 함수형 프로그래밍 패턴 (예: map 및 filter) > * {{{try}}}/{{{catch}}}/{{{throw}}}를 사용한 기본 오류 처리 >---- >Swift가 현대적인 프로그래밍 언어인 이유. WWDC에서 공개된 Swift의 특징은 Fast, Modern, Safe, Interactive이었으나, 이후 Safe(안정성), Fast(신속성), Expressive(표현성)로 바뀌었다. 어느 정도 하위 호환성도 보장하고 있어, 코드 내부에서 [[C(프로그래밍 언어)|C]]나 [[Objective-C]] 코드를 섞거나 스크립트 언어처럼 프로그래밍할 수 있게 되어있다. [clearfix] | RC4 encryption | [[파일:external/regmedia.co.uk/swift_benchmark.jpg|width=100%]] {{{#!folding 내용 보기 ||<-129>{{{+1 {{{#white Swift}}}}}} ||<-220> {{{#white 220x}}}|| ||<-2>[[Objective-C]] ||<-127> {{{#white 127x}}}||<-220> || ||[[Python]] || ||<-347> 1x|| }}} || [br]오른쪽 사진과 같이 WWDC Keynote에서는 RC4[* [[https://en.wikipedia.org/wiki/RC4|Wikipedia(영어)]]] 암호화 속도가 기존 Objective-C 대비 약 1.5배, [[Python]] 대비 220배라고 설명하고 있다. 하지만 Python은 일부러 다중 멀티스레드로 비교해서 싱글스레드 위주의 Python을 느리다고 까고 있으므로 저건 믿을 게 못 된다. [br]Swift의 개발자인 크리스 래트너[* [[LLVM]] 컴파일러의 주요 저자인 그 사람 맞다.] 본인이 직접 언급한 영향을 준 언어로는 [[Rust]], [[Haskell]], [[C\#]], [[Python]], [[Ruby]] 정도가 있다. 그 외 [[Kotlin]] 같은 언어의 영향도 물론 있겠지만, 여러 가지를 봤을 때 가장 강력한 흔적을 남긴 건 역시 Rust다. Rust에 C#을 가미해서 Apple 입맛으로 조리한 느낌. 사실 Kotlin도 위 언어들에서 영향을 받아 비슷한 방향으로 수렴 진화했다고 보는 게 맞다. 그 밖에도 Apple에서 Swift 보급을 위해 노력하는 모습이 보인다. >All of [[Cocoa(API)|Cocoa]] and Cocoa Touch >Complete [[Xcode]] support >Swift language guide >Complete reference docs >Submit apps to App Store [clearfix] || {{{+3 Apple WWDC 2015 Keynote}}}[br]{{{+1 Swift 2}}} {{{#!folding 【 펼치기 ・ 접기 】 [youtube(_p8AsQhaVKI, start=4068, width=368px, height=207px)] }}} || [br]2015년 6월 8일, WWDC 2015에서 Swift의 차기 버전이 발표되었으며, [[오픈 소스|소스를 공개]]한다고 발표했다. OS X, iOS, Linux용으로 같은 해 가을에 배포될 예정이다. Swift 2에서는 {{{do}}}/{{{try}}}/{{{catch}}}/{{{throw}}} 등 에러 확인 구문이 추가되었고, {{{println()}}} 함수가 {{{print()}}}로 대체되었다. 2015년 12월 4일 오픈 소스로 공개되었다. 2.2 및 3.0 개발버전이 배포중이며, OS X, iOS, watchOS, tvOS, Ubuntu LTS/일반 버전[* 2015년 오픈 소스화 작업과 함께 [[우분투]]로의 포팅도 이루어졌다.]을 지원하고 있다. [[아파치 라이선스]] 2.0으로 개발자, 교육자, 학생 등 모두에게 열려있다. Apple은 [[iOS]], [[OS X]], [[watchOS]], [[tvOS]], 그리고 [[Linux]]용 코드를 처리할 수 있는 [[OS X]] 및 [[Linux]]용 바이너리를 제공하고 [[https://swift.org|커뮤니티]]를 개설해 사용자들이 Swift 소스 코드 개발에 직접 참여할 수 있도록 했다. IBM은 서버사이드에서 Swift를 적극적으로 지원하고 있다. IBM은 Swift를 리눅스 서버에서 실행하여 브라우저에서 볼 수 있고 다른 사람과 공유할 수 있는 [[https://swiftlang.ng.bluemix.net/#/repl|IBM Swift Sandbox]]라는 것을 발표했으며[* 2018년 1월에 서비스를 종료했다. [[https://developer.ibm.com/swift/2015/12/03/introducing-the-ibm-swift-sandbox|출처]]], 자사의 클라우드 컴퓨팅 플랫폼인 [[https://www.bluemix.net|Bluemix]]에서도 Swift를 지원하고 있다. 또한, [[Microsoft Windows]]용 컴파일러도 5.3 버전과 함께 공개했다. [[https://swift.org/blog/swift-on-windows/|#]] 현재 Swift는 macOS 환경에서 iOS용 앱을 개발하는 데 주로 쓰인다. 다음은 Apple 개발자 홈페이지에 나와있는 기타 사항이다. [[https://developer.apple.com/swift/|원문]] [[https://developer.apple.com/kr/swift/|한국]] > * Playgrounds and REPL in [[Xcode]][br]Xcode의 Playground 및 REPL > * Read-Eval-Print-Loop (REPL)[br]REPL > * Package Manager[br]Package Manager > * Fast and Powerful[br]빠르고 강력한 성능 > * Designed for Safety[br]안전 중심 설계 > * Objective-C Interoperability[br]Objective-C 상호 운용성저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기